Information processing apparatus, non-transitory computer readable medium, and information processing method

ABSTRACT

An information processing apparatus includes a processor configured to receive an operation performed by a user on an image associated with a designated file, and in response to the operation is an instruction related to an execution of a coordinated function, display a list of candidates for the coordinated function which is executable by using the designated file and display a list of files, which are different from the file, used for executing the coordinated function along with the designated file.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation applications of and claims thepriority benefit of a prior application Ser. No. 16/101,532 filed onAug. 13, 2018, now allowed. The prior application Ser. No. 16/101,532claims the priority benefit of Japanese Patent Application No.2017-231767 filed Dec. 1, 2017. The entirety of each of theabove-mentioned patent applications is hereby incorporated by referenceherein and made a part of this specification.

BACKGROUND Technical Field

The present invention relates to an information processing apparatus, anon-transitory computer readable medium, and an information processingmethod.

SUMMARY

According an aspect of the present invention, there is provided aninformation processing apparatus including a processor configured toreceive an operation performed by a user on an image associated with adesignated file, and in response to the operation is an instructionrelated to an execution of a coordinated function, display a list ofcandidates for the coordinated function which is executable by using thedesignated file and display a list of files, which are different fromthe file, used for executing the coordinated function along with thedesignated file.

BRIEF DESCRIPTION OF THE DRAWINGS

Exemplary embodiments of the present invention will be described indetail based on the following figures, wherein:

FIG. 1 is a block diagram illustrating the configuration of aninformation processing system according to an exemplary embodiment ofthe present invention;

FIG. 2 is a block diagram illustrating the configuration of a terminaldevice;

FIG. 3 is a diagram illustrating a coordinated function managementtable;

FIG. 4 is a view illustrating a screen;

FIG. 5 is a view illustrating a screen;

FIG. 6 is a view illustrating a screen;

FIG. 7 is a view illustrating a screen;

FIG. 8 is a view illustrating a screen;

FIG. 9 is a view illustrating a screen;

FIG. 10 is a view illustrating a screen;

FIG. 11 is a view illustrating a screen;

FIG. 12 is a view illustrating a screen;

FIG. 13 is a view illustrating a screen;

FIG. 14 is a diagram illustrating a coordinated function managementtable; and

FIG. 15 is a diagram illustrating a coordinated function managementtable.

DETAILED DESCRIPTION

An information processing system according to an exemplary embodiment ofthe present invention will be described with reference to FIG. 1 , whichillustrates an example of an information processing system according toan exemplary embodiment.

The information processing system according to the present exemplaryembodiment includes a terminal device 10, a device 12, and a server 14as an example. In the example illustrated in FIG. 1 , the terminaldevice 10, the device 12, and the server 14 have a function ofcommunicating with one another via a communication path N such as anetwork. Of course, the terminal device 10, the device 12, and theserver 14 may communicate with one another via a different communicationpath without using the communication path N, or may directly communicatewith other devices. Further, plural terminal devices 10, plural devices12, and plural servers 14 may be included in the information processingsystem, and the device 12 and the server 14 may not be included in theinformation processing system.

The terminal device 10 is a device such as a personal computer (PC), atablet PC, a smartphone, or a mobile phone, and has a function oftransmitting/receiving data to/from another device. The terminal device10 may be a wearable terminal (a wristwatch type terminal, a wristbandtype terminal, a spectacle type terminal, a ring type terminal, acontact lens type terminal, an intracorporeal embedded terminal, ahearable terminal, etc.). In addition, the terminal device 10 may have aflexible display as a display device. As the flexible display, anorganic electroluminescence type display (flexible organic EL display),an electronic paper type display, a flexible liquid crystal display, andthe like are used. A flexible display that adopts a different displayformat may be used. The flexible display is a display with aflexibly-deformable display portion which may be, for example, bent,folded, rolled, twisted, or stretched. The terminal device 10 may beentirely constituted by a flexible display or may be constituted by aflexible display and other components which are functionally orphysically separated from each other.

The device 12 is a device having a function and is, for example, animage forming device having an image forming function (at least onefunction of a scanning function, a printing function, a copyingfunction, a facsimile function, etc.), a PC, a tablet PC, a smartphone,a mobile phone, a robot (a humanoid robot, an animal robot, otherrobots, etc.), a display device such as a projector and a liquid crystaldisplay, a recording device, a reproducing device, an image capturingdevice such as a camera, a refrigerator, a rice cooker, a microwaveoven, a coffee maker, a vacuum cleaner, a washing machine, an airconditioner, a lighting device, a clock, a surveillance camera, anautomobile, a motorcycle, an aircraft (e.g., an unmanned aerial vehicle(so-called drone)), a game machine, various sensing devices (e.g., atemperature sensor, a humidity sensor, a voltage sensor, a currentsensor, etc.), and the like. The device 12 may be a device that providesan output to a user (e.g., an image forming device or a PC), or may be adevice that does not provide an output to a user (e.g., a sensingdevice). In addition, all of the devices that perform the coordinatedfunction described below may be devices that provide an output to auser, some devices may be devices that provide an output to a user andother devices may be devices that do not provide an output to a user, orall of the devices may be devices that do not provide an output to auser. The category of the concept of the device 12 may include thegeneral devices. For example, information equipment, video equipment,audio equipment, and other equipment may be included in the category ofthe device according to the present exemplary embodiment. Further, thedevice 12 has a function of transmitting/receiving data to/from otherdevices.

The server 14 is a device that manages data and user information, andmanages the device 12. In addition, the server 14 has a function oftransmitting/receiving data to/from other devices.

In the present exemplary embodiment, when plural files (data) areacquired (collected), the notification of a coordinated function that isexecutable with the contents of the plural files is controlled. Thenotification is made by, for example, the terminal device 10 or thedevice 12. Of course, the notification may be made by other devices. Theacquisition (collection) of plural files may be performed by theterminal device 10, by the device 12, or by the server 14. For example,when all of plural files are acquired by the terminal device 10 or theserver 14, the coordinated function is notified. That is, when theterminal device 10 acquires plural files, the coordinated function maybe notified, and when the server 14 acquires plural files, thecoordinated function may be notified. Of course, when the device 12acquires plural files, the coordinated function may be notified. Thatis, any of the terminal device 10, the device 12, and the server 14 mayfunction as an information processing apparatus. Further, when somefiles included in the plural files are acquired by the terminal device10 and other files are acquired by the server 14, the coordinatedfunction may be notified. The coordinated function will be explained indetail later.

Hereinafter, the configuration of the terminal device 10 will bedescribed in detail with reference to FIG. 2 .

A communication unit 16 is a communication interface, and has a functionof transmitting data to other devices and a function of receiving datafrom other devices. The communication unit 16 may be a communicationinterface having a wireless communication function or a communicationinterface having a wired communication function. The communication unit16 corresponds to one or more types of communication methods and maycommunicate with a communication partner according to a communicationmethod suitable for the communication partner (i.e., a communicationmethod to which the communication partner corresponds). Thecommunication method includes, for example, infrared communication,visible light communication, Wi-Fi (registered trademark) communication,and proximity wireless communication (e.g., near-field communication(NFC), etc.). Felica (registered trademark), Bluetooth (registeredtrademark), a radio frequency identifier (RFID), and the like are usedfor the proximity wireless communication. Of course, a wirelesscommunication in another method may be used for the proximity wirelesscommunication. The communication unit 16 may switch the communicationmethod or the frequency bandwidth depending on the communicationpartner, or may switch the communication method or the frequencybandwidth depending on the surrounding environment.

A UI unit 18 is a user interface unit and includes a display unit and anoperation unit. The display unit is, for example, a display device suchas a liquid crystal display. The display unit may be a flexible display.The operation unit is, for example, an input device such as a touchpanel or a keyboard. A user interface serving as both a display unit andan operation unit (e.g., a touch type display or a device thatelectronically displays a keyboard or the like on a display) may beused. In addition, the UI unit 18 may include a sound collecting unitsuch as a microphone and a sound generating unit such as a speaker. Inthis case, information may be input to the terminal device 10 by voice,or information may be generated as voice.

A storage unit 20 is a storage device such as a hard disk or a memory(e.g., an SSD). The storage unit 20 stores coordinated functionmanagement information, various types of data, various programs (e.g.,an operating system (OS), various application programs (applicationsoftware), etc.), information indicating the addresses of other devices(e.g., the device 12) (device address information), informationindicating the address of a server 14 (server address information),information on the coordinated function, and the like. Of course, theinformation may be stored in separate storage devices or may be storedin a single storage device.

Hereinafter, the coordinated function management information will bedescribed in detail. Coordinated function management information isinformation for managing a coordinated function. The coordinatedfunction is a function that is executable with the contents of pluralfiles (data). A file is, for example, a document file, an image file, avideo file, a table file, a presentation file, a figure (drawing) file,a voice file, or the like. Of course, the coordinated function may beexecuted for files other than those files.

A document file is a file having a document format, and is a filecomposed of character strings and other information. Images, tables, andfigures may be included in the document file as other information. Thedocument format is, for example, a text format or a document format.Data having a text format (e.g., data associated with a character string“.txt” as an extension), data having a document format (e.g., dataassociated with a character string “.doc” or “.docx” as an extension),or the like corresponds to the document file.

An image file is a file having an image forming (image format). Theimage file may be image data having a raster format, or image datahaving a vector format. The image format is, for example, a JPEG format,a BMP (bit map) format, a PDF format, a GIF format, a TIFF format, a PNGformat, a PICT format, or the like. Data having the JPEG format (dataassociated with a character string “.jpeg” as an extension), data havingthe BMP format (data associated with a character string “.bmp” as anextension), data having the PDF format (data associated with a characterstring “.pdf” as an extension), data having the GIF format (dataassociated with a character string “.gif” as an extension), data havingthe TIFF format (data associated with a character string “.tiff” as anextension), data having the PNG format (data associated with a characterstring “.png” as an extension), data having the PICT format (dataassociated with a character string “.pict” as an extension), and thelike correspond to the image files. Of course, image data having aformat other than those described above may be used as an image fileaccording to the present exemplary embodiment.

A video file is a file having a video format. The video format is, forexample, an AVI format, an MP4 format, a MOV format, an MPEG2-TS format,an MPEG2-PS format, a WMV format, an FLV format, or the like. Datahaving the AVI format (data with a character string “.avi” as anextension), data having the MP4 format (data with a character string“.mp4” as an extension), data having the MOV format (data with acharacter string “.mov” as an extension), data having the MPEG2-TSformat (data with a character string “.m2ts” as an extension), datahaving the MPEG2-PS format (data with a character string “.mpeg” as anextension), data having the WMV format (data with a character string“.wmv” as an extension), data having the FLV format (data with acharacter string “.flv” as an extension), and the like correspond to thevideo files. Of course, video data having a format other than thosedescribed above may be used as a video file according to the presentexemplary embodiment.

A table file is a file having a table format, and is a file composed oftables, graphs, and other information. Character strings, images, andfigures may be included in the table file as other information. Forexample, the table file is data that is associated with a characterstring “.csv,” “.xls,” or “.xlsx” as an extension.

The presentation file is a file that has a sheet format forpresentation. For example, data that is associated with a characterstring “.ppt” or “.pptx” as an extension corresponds to the presentationfile. The presentation file is configured with, for example, a characterstring, an image (a still image or a moving image), a figure, voice, orthe like.

A figure file is a file having a figure (drawing) format. The figurefile is a file created by a figure drafting software (e.g.,two-dimensional CAD, three-dimensional CAD, or the like). The figurefile is, for example, data having a DXF format (data associated with acharacter string “.dxf” as an extension), data having a DWG format (dataassociated with a character string “.dwg” as an extension), or the like.In addition, data associated with “.vsd” or “.vsdx” as an extension maybe considered as the figure file.

A voice file is a file having a voice format. The voice format is, forexample, a non-compressed voice format (a WAV format, an AIFF format, aBWF format, etc.), an irreversible compressed voice format (an mp3format, an AAC format, a WMA format, etc.), a reversible compressedvoice format (a TAK format, a FLAC format, etc.), or the like. Datahaving the non-compressed voice format (data associated with “.wav,”etc. as an extension), data having the irreversible compressed voiceformat (data associated with the character string “.mp3,” etc. as anextension), data having the non-compressed voice format (data associatedwith the character string “.tak,” etc. as an extension), and the likecorrespond to the voice files.

The coordinated function is a function that is executable with one ormore functions. The function may be implemented by a device serving ashardware, or may be implemented by software (program). In other words,devices and software are used to execute the coordinated function. Thecoordinated function may be executed by a single device or may beexecuted by coordinating plural devices with one another. Similarly, thecoordinated function may be executed by a single piece of software, maybe executed by coordinating plural pieces of software with one another.The coordinated function may be also executed by coordinating one ormore devices with one or more pieces of software.

Further, the coordinated function may be a function that is executablewith a specific portion of a device or a specific function of software.For example, when a function is assigned to each portion of a device,the coordinated function may be a function that is executable by usingthe portion. In addition, when the software has plural functions, thecoordinated function may be a function that uses some of the pluralfunctions. The coordinated function may also be a function that uses acollective function configured by the plural functions. In thecollective function, the plural functions are executed simultaneously orsequentially so that a processing by the collective function isexecuted.

For example, the coordinated function is defined for each file format(type, attribute). coordinated function management information isinformation indicating an association between information indicating acombination of the formats (types, attributes) of plural files, andinformation indicating the content of the coordinated function that isexecutable with the contents of the plural files (coordinated functioninformation), as an example. The file format (type, attribute) is, forexample, the document format, the image format, the video format, tableformat, the sheet format, the figure format, the voice format, or thelike as described above.

The coordinated function management information may be information thatindicates an association between information indicating a combination ofthe names (file names) of plural files and the coordinated functioninformation indicating the coordinated function that is executable withthe contents of the plural files.

In addition, information for identifying the device used for thecoordinated function (device identification information) and informationfor identifying the software used for the coordinated function (softwareidentification information) may be associated with the coordinatedfunction information to be registered in the coordinated functionmanagement information.

When a function used for a coordinated function is updated (e.g., whenthe performance of software or a device for implementing the function isupdated), the coordinated function is updated along with the update, andas a result, the coordinated function management information is alsoupdated. In some cases, as a result, after the update, a coordinatedfunction becomes available with plural functions, which otherwise cannotbe coordinated with one another before the update, or contrarily, acoordinated function available before the update becomes unavailableafter the update. Coordinated function information indicating thecoordinated function that has become available after the update isregistered in the coordinated function management information, andcoordinated function information indicating the coordinated functionthat becomes unavailable after the update is deleted from thecoordinated function management information or registered as unavailableinformation. The terminal device 10 may update the coordinated functionmanagement information by arbitrary timing, periodically, by a timingdesignated by a user, or the like.

The coordinated function may be a function that is executable bycoordinating plural different functions (e.g., different devices orpieces of software) with one another, or a function that is executableby coordinating plural identical functions (e.g., the same device orsoftware) with one another. The coordinated function may be a functionthat was not available before the coordination. The function that wasnot available before the coordination may be a function that becomesavailable by coordinating plural identical functions with one another,or a function that becomes available by combining plural differentfunctions with one another. For example, by coordinating a documentcreation function (document creation software) with an image displayfunction (image display software (e.g., image viewer)), it becomespossible to insert (attach) an image into (to) a document and tosuperimpose a document (a character string or a text) on the image as acoordinated function. That is, an image insertion function and a textsuperimposition function may be executed by coordinating the documentcreation function with the image display function.

The category of the concept of the coordinated function may include amerging function that enables the execution of new functions bycoordinating plural devices or plural pieces of software with oneanother. For example, an extended display function as the mergingfunction may be implemented by combining plural displays with oneanother. As another example, a recording function as the mergingfunction may be implemented by combining a television with a recorder.The recording function is a function of recording the image displayed onthe television. In addition, a capturing area expanding function as themerging function may be implemented by combining plural cameras with oneanother. The expanding function is a function of connecting andcapturing, for example, the capturing areas of the respective cameras.In addition, a conversation translating function (a function oftranslating a conversation via a telephone) as the merging function maybe implemented by combining a telephone with a translator or translationsoftware. In this manner, the category of the concept of the coordinatedfunction includes a function that may be implemented by coordinating thesame type of devices or software with one another, or a function thatmay be implemented by coordinating different types of devices orsoftware with one another.

The storage unit 20 may store available function management information.The available function management information is information formanaging functions available to each user. The available functionmanagement information is, for example, information indicating anassociation between information for identifying a user (useridentification information) and function information indicating thefunctions available to the user (including coordinated functioninformation). The functions available to the user are, for example, thefunctions provided free of charge to the user, the functions purchasedby the user, and the like. The user identification information is, forexample, user account information such as a user ID and a user name. Byreferring to the available function management information, functionsavailable to each user are specified (identified). The availablefunction management information is updated, for example, every time thefunction is provided to the user free of charge or for a fee.

The time at which the coordinated function is executed (execution time)may be set so that the execution time may be associated with eachcoordinated function in the coordinated function management information.The execution time is determined by the day of the week, the time zone(e.g., the time zone is set by the start time and the end time), theday, the week, the month, and the like. The execution time may be set bythe user or may be predetermined. The execution time may be setindividually for each coordinated function, or the same execution timemay be set for all coordinated functions. In a case where an instructionto execute the coordinated function is given by the user, when the timeat which the execution instruction is given (the day of the week, thetime zone, etc.) is included in the execution time set for thecoordinated function, the coordinated function is executed. When thetime at which the execution instruction is given is not included in theexecution time, the coordinated function is not executed. In this case,assuming that the execution instruction has already been given, thecoordinated function may be executed when the execution time has come.

Further, each device may be directly or indirectly controlled by theterminal device 10. For example, the terminal device 10 may directlycontrol the device by transmitting a control signal to the device tocontrol an operation thereof, or control the device via a relay deviceby transmitting a control signal to the relay device. When the relaydevice is used, the relay device controls the device according to, forexample, the control signal transmitted from the terminal device 10. Therelay device that receives the control signal from the terminal device10 may transmit the control signal to the other relay device so that theother relay device may control the device. Further, the device may becontrolled by transmitting the control signal to the other relay device,or the device may be controlled via a server 14 by transmitting thecontrol signal from the relay device to the server 14. The relay devicemay be a so-called smart speaker (a device that has a wirelesscommunication function and a speaker function), or a device that has acommunication device but does not have a speaker function. The relaydevice may be installed indoors (e.g., on the floor, on the ceiling, onthe top of a table, etc.) or outdoors. Also, the relay device may be amovable device (e.g., a self-propelled device). The device itself mayfunction as a relay device.

A controller 22 has a function of controlling the operation of eachportion of the terminal device 10. For example, the controller 22executes various programs, controls communication by a communicationunit 16, controls a notification of information using a UI unit 18(e.g., display of information, output of voice, etc.), receives theinformation that has been input using the UI unit 18, and the like.Further, the controller 22 includes a specifying unit 24.

The specifying unit 24 has a function of referring to the coordinatedfunction management information and thus specifying a coordinatedfunction executable with the contents of plural files to be subjected tocoordination. For example, the specifying unit 24 specifies, withreference to the coordinated function management information, acoordinated function that is associated with a combination of theformats (types) of the plural files to be subjected to coordination. Thespecifying unit 24 may specify, with reference to the coordinatedfunction management information, a coordinated function that isassociated with a combination of the formats (types) of the plural filesto be subjected to coordination.

When the file is acquired (collected), the specifying unit 24 identifiesthe file as a file to be subjected to coordination. For example, thefile is acquired via an e-mail, a social networking service (SNS), othercommunication methods, a recording medium (a memory such as a USB memoryor other memory card, a magnetic recording medium, an optical disk,etc.), or the like. For example, when the terminal device 10 acquires(collects) the file via an e-mail, an SNS, a recording medium, or thelike, the specifying unit 24 identifies the file as a file to besubjected to coordination. Moving a file between logical layers of arecording medium may also be treated as acquisition (collection) of thefile. For example, when a file is stored in a storage area (e.g., driveC) in the hard disk drive (HDD) and the file is sent to another storagearea (e.g., drive D), the specifying unit 24 may identify the file as afile to be subjected to coordination. In addition, the specifying unit24 may identify the file displayed in a specific display area on thescreen as a file to be subjected to coordination. Also, when a file isstored in a specific storage area or displayed in a specific displayarea, another file that is a target of a coordinated function togetherwith the file is sent to the specific storage area. Alternatively, whena file is displayed in the specific display area, the specifying unit 24may identify the file as a file to be subjected to coordination.

When the coordinated function is specified by the specifying unit 24,the controller 22 controls the notification of the coordinated function.For example, the controller 22 may cause information indicating thecoordinated function to be displayed on a display unit of the UI unit18, or may output voice information indicating the coordinated function.The controller 22 may also control the execution of the coordinatedfunction specified by the specifying unit 24. In addition, thecontroller 22 may control the notification of the coordinated functionusing a device other than the terminal device 10.

When the available function of the user is managed, the specifying unit24 may receive the user identification information and specify afunction associated with the user identification information in theavailable function management information stored in the storage unit 20.For example, the specifying unit 24 receives the identificationinformation of the user logged in to the terminal device 10, specifiesthe function associated with the user identification information in theavailable function management information, and specifies the coordinatedfunction that is executable with the contents of the plural files to besubjected to coordination. As a coordinated function associated with theuser identification information in the available function managementinformation, the coordinated function that is executable with thecontents of the plural files to be subjected to coordination is acoordinated function that the user may use.

The coordinated function management information may be stored in anexternal device such as the device 12 and the server 14. In this case,the coordinated function management information may not be stored in thestorage unit 20. Further, the specifying unit 24 may be provided in anexternal device. In this case, the specifying unit 24 may not beprovided in the terminal device 10. That is, the management andspecification processing of the coordinated function may be performed bythe terminal device 10 or by an external device. When the specificationprocessing is performed by the external device, the result of theprocessing (e.g., information indicating the specified coordinatedfunction) is transmitted from the external device to the terminal device10 and displayed on the display unit of the UI unit 18.

Hereinafter, the information processing system according to the presentexemplary embodiment will be described in more detail.

The coordinated function management information will be described indetail with reference to FIG. 3 . FIG. 3 illustrates an example of acoordinated function management table as coordinated function managementinformation. As an example, in the coordinated function managementtable, information indicating a combination of plural file formats (filetypes) and information indicating the contents of the coordinatedfunction that is executable with the contents of plural files(coordinated function information) are associated with one another. Forexample, when plural files are acquired (collected), the specifying unit24 specifies a coordinated function associated with the combination ofthe plural file formats in the coordinated function management table.The controller 22 causes, for example, information on the specifiedcoordinated function (e.g., information indicating the contents orexplanation of the coordinated function, etc.) to be displayed on thedisplay unit of the UI unit 18.

In the example illustrated in FIG. 3 , a combination of two file formatsand a coordinated function are associated with one another, but acombination of three or more file formats and a coordinated function maybe associated with one another to be registered in the coordinatedfunction management table.

Further, information indicating a combination of the names (file names)of plural files and information indicating the coordinated function thatis executable with the contents of the plural files may be associatedwith one another to be registered in the coordinated function managementtable.

In addition, the device identification information for identifying thedevice used in the coordinated function and the software identificationinformation for identifying the software used in the coordinatedfunction may be associated with the coordinated function information tobe registered in the coordinated function management table.

Examples of the device identification information include, for example,information indicating the device name, the device ID, and the devicetype, the type number of the device, information for managing the device(e.g., asset management information, etc.), information indicating aposition where the device is installed (positional information of thedevice), an image connected to the device (device image), device addressinformation, and the like. The device image is, for example, an externalimage representing the device. The external image may be an image thatrepresents the outside of the device (e.g., a housing of the device), animage that represents a state in which the inside may be seen from theoutside by opening the housing (e.g., an internal structure), or animage that represents a state in which the device is covered by a sheetfor packing or the like. The device image may be an image that isgenerated by capturing the device (an image representing an externalappearance of the device or an image representing the inside of thedevice), or an image that schematically represents the device (e.g., anicon, etc.). The device image may be a still image or a moving image.The data of the device image may be stored in the storage unit 20 or inan external device such as the device 12 or the server 14.

Examples of the software identification information include, forexample, information indicating the software name, the software ID, andthe software type, the type number of the software, information formanaging the software, an image connected to the software (softwareimage), and the like. The software image is, for example, an imagerepresenting the function of the software (e.g., an icon, etc.). Thesoftware image may be a still image or a moving image. The data of thesoftware image may be stored in the storage unit 20 or in an externaldevice such as the device 12 or the server 14.

Hereinafter, each of the coordinated functions illustrated in FIG. 3will be described. The “document format” in FIG. 3 is a text format(where the extension is “.txt”) or a document format (where theextension is “.doc” or “.docx”). The “table format” is a format in whichthe extension is represented by “.csv,” “.xls,” or the like. The imageformat is a format in which the extension is represented by “.jpeg,”“.pdf,” or the like. The video format is a format in which the extensionis represented by “.avi,” “.mpeg,” or the like. The sheet format is aformat in which the extension is represented by “.ppt” or the like. FIG.3 does not illustrate a figure format or a voice format, but anassociation between a combination including these formats andcoordinated functions may be registered in the coordinated functionmanagement table. Of course, an association between a combinationincluding the file formats other than the file formats illustrated inFIG. 3 and coordinated functions may be specified and registered in thecoordinated function management table.

Hereinafter, each of the coordinated functions illustrated in FIG. 3will be described. When a document file and a table file are identifiedas files to be subjected to coordination, a “function of inserting atable into a document” and a “function of inserting a document into atable,” which are associated with a combination of the document formatand the table format, are specified as coordinated functions. The“function of inserting a table into a document” is a function ofinserting a table represented by a table file into a documentrepresented by a document file. The “function of inserting a documentinto a table” is a function of inserting a document represented by adocument file into a table represented by a table file.

When a document file and an image file are identified as files to besubjected to coordination, a “function of inserting an image into adocument” and a “function of superimposing a document on an image,”which are associated with a combination of the document format and theimage format, are specified as coordinated functions. The “function ofinserting an image into a document” is a function of inserting an imagerepresented by an image file into a document represented by a documentfile. The “function of superimposing a document on an image” is afunction of superimposing a document represented by a document file onan image represented by an image file.

When a document file and a video file are identified as files to besubjected to coordination, a “function of inserting a video into adocument” and a “function of inserting a still image into a document,”which are associated with a combination of the document format and thevideo format, are specified as coordinated functions. The “function ofinserting a video into a document” is a function of inserting a videorepresented by a video file into a document represented by a documentfile. The “function of inserting a still image into a document” is afunction of inserting one or more frames (still images) constituting avideo file into a document represented by a document file. For example,in the case of a document file that does not correspond to a video, thatis, a file into which a video may not be inserted, when the “function ofinserting a still image into a document” is executed, one or more frames(still images) in the video file are inserted into the documentrepresented by the document file.

Plural files having the same file format may be used as the files to besubjected to coordination. In this case, a function of merging files isspecified as a coordinated function. The function of merging files is afunction of merging the contents of plural files. Another file may bemerged into one file to delete the other file, and a new file may becreated in which the plural files are merged while leaving the pluralfiles.

For example, when the plural document files are identified as files tobe subjected to coordination, a “function of adding the contents of onedocument to the other document,” which is associated with a combinationof the document formats, is specified as a coordinated function.

When plural table files are identified as files to be subjected tocoordination, a “function of adding one table to the other table,” whichis associated with a combination of the table formats, is specified as acoordinated function.

When plural video files are identified as files to be subjected tocoordination, a “function of adding one video to the other video,” whichis associated with a combination of the video files, is specified as acoordinated function.

In addition, when a presentation file and a document file are identifiedas files to be subjected to coordination, a “function of inserting adocument into a presentation sheet,” which is associated with acombination of the sheet format and the document format, is specified asa coordinated function. The “function of inserting a document into apresentation sheet” is a function of inserting a document represented bya document file into a sheet represented by a presentation file.

The coordinated function illustrated in FIG. 3 is merely an example. Acoordinated function that is executable with a device or software may beregistered in the coordinated function management table. In addition,the coordinated function may be a function that is executable with anInternet of Things (IoT) device. The coordinated function may be usedin, for example, a connected home (a system in which devices such ashome appliances are connected via a network using the IoT technology).In this case, the devices may be connected via a specific server, orwithout a specific server. Further, the device and the software may becoordinated with one another via the IFTTT to execute the coordinatedfunction. That is, when the contents of the coordinated function aretriggered by a device or software, other devices or software may performan action (processing). Further, when the contents of the coordinatedfunction are triggered by a file, the action (processing) may beperformed on another file. In addition, a function of causing an actionto become another trigger and performing another action may be includedin the category of the coordinated function of the present exemplaryembodiment. Moreover, a function of coordinating plural Web services andan application programming interface (API) coordination of coordinatingplural systems, services, or the like using the API may be included inthe category of the coordinated function of the present exemplaryembodiment.

As for the device, the portions of the device may be used. For example,when a device has plural functions and the function is assigned to eachportion of the device, a coordinated function using the portion of thedevice may be defined. As a specific example, it is assumed that aprinting function is assigned to a main body unit of a multifunctiondevice, a scanning function is assigned to a reading unit of themultifunction device (e.g., a portion corresponding to a document cover,a document glass, or an automatic document feeder), and apost-processing function (e.g., a stapling function, etc.) is assignedto a post-processing device of the multifunction device. When thescanning function is used as a function included in the coordinatedfunction, the reading unit of the multifunction device may be designatedas a portion of the device required for the coordinated function. Inaddition, a collective function integrated in a block unit such asrobotics process automation (RPA) may be used as software.

The coordinated function registered in the coordinated functionmanagement table may be created and registered in advance or by theuser.

The device used for the coordinated function may be the device includedin the information processing system or the device not included in theinformation processing system. The software used for the coordinatedfunction may be software installed in the terminal device 10, orsoftware installed in an external device such as the device 12 or theserver 14. The coordinated function may be executed using plural piecesof software installed on both the terminal device 10 and the externaldevice.

Also, the terminal device 10 may update the coordinated functionmanagement table at any timing, periodically, at a timing designated bya user or an administrator, or the like. When the coordinated functionmanagement table is stored in an external device such as the device 12or the server 14, the coordinated function management table may beupdated by the external device. The updating may add a new coordinatedfunction to the coordinated function management table, change thecontents or configuration of the coordinated function already registeredin the coordinated function management table, or delete a coordinatedfunction from the coordinated function management table. For example,when a function of the device registered in the coordinated functionmanagement table or a function of the software is updated, the contentof the coordinated function using the updated function may be updatedalong with the update. In addition, after the update, a coordinatedfunction may become available with plural components, which otherwisecannot be coordinated with one another before the update, or contrarily,a coordinated function available before the update may becomeunavailable after the update.

The coordinated function management table illustrated in FIG. 3 ismerely an example, and information other than file formats andcoordinated functions may be associated with one another. For example, acombination of the names of plural files (file names) and a coordinatedfunction that is executable with the contents of the plural files may beassociated with one another to be registered in the coordinated functionmanagement table. In this case, the specifying unit 24 specifies thecoordinated function associated with the combination of the names of theplural files by referring to the coordinated function management table.

Also, the specifying unit 24 may specify a file to which the content ofthe file is added based on the file name. For example, when the filename includes a character string indicating that the file incorporatesthe contents of files, such as the character string “ledger,” “book,”“integration,” “management,” “statistics,” “graph,” “table,” or “list”(i.e., a file in which the contents of other files are expected orassumed to be added), the specifying unit 24 identifies the file as adestination file to which the contents of the file is added. Inaddition, the specifying unit 24 identifies a file having a file namethat does not include the above character string for integration, and afile having a file name including a character string indicating that thefile provides the contents thereof (a character string for providingcontents) as files that include the contents to be added. For example, afile having a file name that includes a character string “receipt,”“voucher,” “personal data,” “device data,” or the like does notcorrespond to the above file for integration and is identified as a filethat provides contents.

For example, in a case where document files A1 and A2 are identified asfiles to be subjected to coordination, when the document file A1 has afile name including the above character string for integration, and thedocument file A2 has a file name that does not include the characterstring for integration and includes a character string for providingcontents, the specifying unit 24 specifies a coordinated function forwriting, duplicating, and statistically processing the contents of thedocument file A2 for providing contents in a document file A as acoordinated function that is executable with the contents of thedocument files A1 and A2.

The character string for integration and the character string forproviding contents may be included in attribute information of the file.In this case, the specifying unit 24 may determine whether the filecorresponds to one of the files for integration and providing contentsby referring to the attribute information of the file.

Further, when the names of the plural files are identical to oneanother, the specifying unit 24 may analyze the contents of therespective files to determine whether the files are identical to oneanother. When the files are not identical to one another, the specifyingunit 24 determines whether to use the file for integration or forproviding contents based on the analysis results of the contents. Whenthe files are identical to one another and stored in the same folder,the controller 22 may change the name of each file so that the filenames are different from each other, or overwrite the contents of onefile in another file.

Hereinafter, the operation of the terminal device 10 will be describedwith specific examples.

For example, when the terminal device 10 acquires (collects) file Arelating to a ledger (e.g., a file having a document format or a tableformat) and file B relating to a receipt (e.g., a file having a documentformat or a table format), the specifying unit 24 searches for acoordinated function that is executable with the contents of the filerelating to the ledger and the contents of the file relating to thereceipt in the coordinated function management table. That is, thespecifying unit 24 specifies a coordinated function that is associatedwith a combination of the file relating to the ledger and the filerelating to the receipt in the coordinated function management table.The controller 22 causes information on the coordinated functionspecified by the specifying unit 24 (e.g., information indicating thecontent and name of the coordinated function) to be displayed on thedisplay unit of the UI unit 18. The files A and B are acquired by theterminal device 10 via an electronic mail, an SNS, a recording medium,or other methods.

FIG. 4 illustrates an example of display of information on thecoordinated function. When the coordinated function that is executablewith the contents of the files A and B is specified, the controller 22causes a screen 26 to be displayed on the display unit, and causesinformation on the coordinated function that is executable with thecontents of the files A and B to be displayed on the screen 26. Forexample, when the coordinated function that is executable with thecontents of the files A and B is a function of “inputting the contentsof the receipt of the file B into the ledger of the file A,” thedescription of the function or the like is displayed on the screen 26.When the user presses the YES button on the screen 26, the controller 22controls the execution of the coordinated function. For example, thecontroller 22 activates software for creating and editing the ledger andsoftware for referring to the receipt, and inputs the contents of thereceipt of the file B into the ledger of the file A by the function ofsuch software. Such software may be the same software. For example, thecontroller 22 identifies the contents described in the receipt (e.g.,expenses, etc.) using a character recognition technology, and inputs thecontents of the receipt to the place corresponding to the contents inthe ledger. Specifically, when the contents of the receipt are relatedto food expenses, the contents of the receipt are input into the item offood expenses in the ledger.

According to the present exemplary embodiment, when the terminal device10 acquires plural files, the user is provided with a coordinatedfunction that is executable with the contents of the plural files.

The specifying unit 24 may identify plural files acquired simultaneouslyby the terminal device 10 as files to be subjected to coordination, andidentify plural files acquired in separate timings by the terminaldevice 10 as files to be subjected to coordination.

Also, when the terminal device 10 acquires three or more files, thespecifying unit 24 may specify a coordinated function that is executablewith the contents of two or more files among the three or more files.The specifying unit 24 may specify a coordinated function that isexecutable with the contents of all the files. For example, when theterminal device 10 acquires the files A, B, and C, the specifying unit24 may specify a coordinated function that is executable with thecontents of the files A, B, and C, and specify a coordinated functionthat is executable with the contents of two files among the files A, B,and C. Specifically, when a coordinated function that is executable withthe contents of the files A and B, and a coordinated function that isexecutable with the contents of the files A and C are registered in thecoordinated function management table, the specifying unit 24 specifiesthese coordinated functions as executable coordinated functions, and thecontroller 22 causes information on these coordinated functions to bedisplayed on the display unit. When a coordinated function that isexecutable with the contents of the files B and C is not registered inthe coordinated function management table, information on thecoordinated function using the contents of the files B and C is notdisplayed on the display unit.

When the server 14 acquires plural files, the user may be provided witha coordinated function that is executable with the contents of thefiles. For example, when the terminal device 10 transmits the files Aand B to the server 14 and the server 14 acquires the files A and B, thespecifying unit 24 provided in the server 14 specifies the coordinatedfunction that is executable with the contents of the files A and B byreferring to the coordinated function management table. The server 14transmits information on the coordinated function to the terminal device10 and the controller 22 of the terminal device 10 causes theinformation on the coordinated function to be displayed on the displayunit. Further, in a case where the file A is stored in the server 14,when the terminal device 10 transmits the file B to the server 14, thecoordinated function that is executable with the contents of the files Aand B may be specified. The files A and B may be respectivelytransmitted to the server 14 from different devices or terminal devices.Also, in this case, the coordinated function that is executable with thecontents of the files A and B is specified in the server 14, asdescribed above. The information on the coordinated function may betransmitted from the server 14 to the terminal device or device thattransmits the file, or to the terminal device or device that transmitsthe first file, the last file, or a specific file to the server 14.

Modification 1

Hereinafter, modification 1 will be described. For example, in a casewhere the file A is already stored in the storage unit 20 of theterminal device 10, when the terminal device 10 acquires the file B, thespecifying unit 24 may specify the coordinated function that isexecutable with the contents of the files A and B by referring to thecoordinated function management table. The information on thecoordinated function is displayed on the display unit as illustrated inFIG. 4 .

In a case where the file A is not stored in the storage unit 20 of theterminal device 10 and the file B is already stored in the storage unit20, even when the terminal device 10 acquires the file A, the specifyingunit 24 may specify the coordinated function that is executable with thecontents of the files A and B, and the controller 22 may cause theinformation on the coordinated function to be displayed on the displayunit, as described above.

According to modification 1, when some files among plural files to besubjected to coordination are already stored in the terminal device 10and another file is acquired by the terminal device 10, the user isprovided with a coordinated function that is executable with thecontents of the plural files.

In a case where the file A is already stored in the server 14, when theterminal device 10 transmits the file B to the server 14 and the server14 acquires the file B, the specifying unit 24 provided in the server 14may specify the coordinated function that is executable with thecontents of the files A and B by referring to the coordinated functionmanagement table. The information on the coordinated function istransmitted from the server 14 to the terminal device 10 and displayedon the display unit of the terminal device 10. Even when the file A isnot stored in the server 14, the file B is stored in the server 14, andthe file A is transmitted from the terminal device 10 to the server 14,the coordinated function may be specified as described above and theinformation on the coordinated function may be transmitted from theserver 14 to the terminal device 10.

In addition, in a case where one or more files are already stored in thestorage unit 20 of the terminal device 10, when the terminal device 10acquires one or more files, the specifying unit 24 identifies a filegroup including one or more files stored in the storage unit 20, and oneor more files acquired by the terminal device 10 as a group of candidatefiles for coordination. In this case, the specifying unit 24 specifies acoordinated function that is executable with the contents of two or morefiles included in the file group. The specifying unit 24 may specify acoordinated function that is executable with the contents of all filesincluded in the file group.

Modification 2

Hereinafter, modification 2 will be described. For example, in a casewhere an image associated with the file A (e.g., an icon) is displayedon a specific screen (e.g., a desktop screen, a main screen, etc.), whenthe terminal device 10 acquires the file B, the specifying unit 24 mayspecify the coordinated function that is executable with the contents ofthe files A and B by referring to the coordinated function managementtable.

As a specific example, the controller 22 causes a screen 28 functioningas a desktop screen to be displayed on the display unit, as illustratedin FIG. 5 . In a case where an image 30 associated with the file A isdisplayed on the screen 28, when the terminal device 10 acquires thefile B, the specifying unit 24 specifies the coordinated function thatis executable with the contents of the files A and B, and the controller22 causes the information on the coordinated function to be displayed onthe display unit, as illustrated in FIG. 4 .

In a case where an image associated with the file B is displayed on thescreen 28, when the terminal device 10 acquires the file A, thespecifying unit 24 may specify the coordinated function that isexecutable with the contents of the files A and B, and the controller 22may cause the information on the coordinated function to be displayed onthe display unit, as described above.

According to modification 2, when some files among plural files to besubjected to coordination are displayed on a specific screen and anotherfile is acquired by the terminal device 10, the user is provided with acoordinated function that is executable with the contents of the pluralfiles.

Further, in a case where one or more files are displayed on the screen28, when the terminal device 10 acquires one or more files, thespecifying unit 24 specifies a file group including one or more filesdisplayed on the screen 28 and one or more files acquired by theterminal device 10 as a group of candidate files for coordination. Inthis case, the specifying unit 24 specifies a coordinated function thatis executable with the contents of two or more files included in thefile group.

Modification 3

Hereinafter, modification 3 will be described. When the files A and Bare displayed on the same screen, the information on the coordinatedfunction that is executable with the contents of the files A and B maybe displayed. For example, as illustrated in FIG. 6 , when the image 30associated with the file A and an image 32 associated with the file Bare displayed on the same screen 28, the specifying unit 24 identifiesthe files A and B as files to be subjected to coordination, andspecifies the coordinated function that is executable with the contentsof the files A and B. The controller 22 causes the information on thecoordinated function to be displayed on the display unit.

For example, in a case where the image 30 associated with the file A isdisplayed on the screen 28, when the terminal device 10 acquires thefile B, and the user causes the image 32 associated with the file B tobe displayed on the screen 28 using the UI unit 18 (e.g., when aninstruction is given to display the image 32 on the screen 28), thespecifying unit 24 identifies the files A and B as files to be subjectedto coordination. In a case where the image 32 associated with the file Bis displayed on the screen 28, even when the terminal device 10 acquiresthe file A and the user causes the image 30 associated with the file Ato be displayed on the screen 28, the files A and B are identified asthe files to be subjected to coordination so that the information on thecoordinated function that is executable with the contents of the files Aand B is displayed. Further, in a case where the images 30 and 32 arenot displayed on the screen 28, when the terminal device 10 acquires thefiles A and B, and the user causes the images 30 and 32 to be displayedon the screen 28 using the UI unit 18, the specifying unit 24 mayidentify the files A and B as files to be subjected to coordination.

As another example, in a case where the files A and B are stored in thestorage unit 20 of the terminal device 10, when the user causes theimages 30 and 32 to be displayed on the screen 28 using the UI unit 18(e.g., when an instruction is given to display the images 30 and 32 onthe screen 28), the specifying unit 24 may identify the files A and B asfiles to be subjected to coordination.

Further, when the files A and B are automatically displayed on the samescreen 28 in accordance with predetermined conditions or the likeinstead of the user's operation, the specifying unit 24 may identify thefiles A and B as files to be subjected to coordination and specify thecoordinated function.

The controller 22 may cause information on the coordinated function tobe displayed on the screen 26, which is different from a desktop screen,as illustrated in FIG. 4 , and may provide a display area 34 of thecoordinated function on the screen 28 as the desktop screen so thatinformation on the coordinated function is displayed in the display area34, as illustrated in FIG. 6 .

According to modification 3, when plural files are displayed on the samescreen, the user is provided with a coordinated function that isexecutable with the contents of the plural files. In this manner, thecoordinated function that is executable with the contents of the pluralfiles is not notified at the stage where the terminal device 10 acquiresthe plural files. Therefore, it becomes difficult for informationunnecessary for the user to be displayed as compared with a case wherethe coordinated function is always notified at the stage of acquisition.

When three or more files are displayed on the same screen (e.g., thescreen 28), the specifying unit 24 identifies those three or more filesas a group of candidate files for coordination, and specifies thecoordinated function that is executable with the contents of two or morefiles included in the file group.

Modification 4

Hereinafter, modification 4 will be described. As illustrated in FIG. 7, the controller 22 may cause a specific display area 36 to which thecoordinated function is responsive to be displayed on the screen 28. Thespecifying unit 24 identifies a file associated with the image displayedin the display area 36 as a file to be subjected to coordination. Forexample, when the user moves the images 30 and 32 to the display area 36using the UI unit 18, the specifying unit 24 identifies the files A andB as the files to be subjected to coordination, and specifies thecoordinated function that is executable with the contents of the files Aand B. The controller 22 causes the information on the coordinatedfunction to be displayed on the display unit.

According to modification 4, plural files displayed in a specificdisplay area are identified as files to be subjected to coordination,and the coordinated function that is executable with the contents of theplural files is provided to the user. In this manner, it becomesdifficult for information unnecessary for the user to be displayed ascompared with a case where the coordinated function is always notifiedat the stage where the plural files are acquired.

Further, when three or more files are displayed in the display area 36,the specifying unit 24 identifies those three or more files as a groupof candidate files for coordination, and specifies the coordinatedfunction that is executable with the contents of two or more filesincluded in the file group.

Modification 5

Hereinafter, modification 5 will be described. When the files A and Bare stored in the same folder (storage area), information on acoordinated function that is executable with the contents of the files Aand B may be displayed. For example, in a case where the file A isalready stored in a folder, when the user moves the file B to the folderusing the UI unit 18, the specifying unit 24 identifies the files A andB as files to be subjected to coordination, and specifies thecoordinated function that is executable with the contents of the files Aand B. The controller 22 causes the information on the coordinatedfunction to be displayed on the display unit. When the user moves afolder A to the folder in which the file B is stored using the UI unit18, information on the coordinated function that is executable with thecontents of the files A and B is also displayed as described above.

Further, when the files A and B are automatically stored in the samefolder in accordance with predetermined conditions or the like insteadof the user's operation, the specifying unit 24 may identify the files Aand B as files to be subjected to coordination and specify thecoordinated function.

According to modification 5, the user is provided with a coordinatedfunction that is executable with the contents of plural files stored inthe same folder. In this manner, it becomes difficult for informationunnecessary for the user to be displayed as compared with a case wherethe coordinated function is always notified at the stage where theplural files are acquired.

Further, when three or more files are stored in the same folder, thespecifying unit 24 identifies those three or more files as a group ofcandidate files for coordination, and specifies the coordinated functionthat is executable with the contents of two or more files included inthe file group.

Modification 6

Hereinafter, modification 6 will be described. When the files A and Bare stored in a specific folder to which the coordinated function isresponsive (storage area), information on the coordinated function thatis executable with the contents of the files A and B may be displayed.The specific folder may be specified by the user or may bepredetermined.

For example, when the user moves the folders A and B to a specificfolder in which the coordinated function is responsive using the UI unit18, the specifying unit 24 identifies the files A and B as files to besubjected to coordination, and specifies the coordinated function. Asanother example, when the files A and B are automatically stored in aspecific folder in accordance with predetermined conditions or the likeinstead of the user's operation, the specifying unit 24 may identify thefiles A and B as files to be subjected to coordination and specify thecoordinated function.

According to modification 6, the user is provided with a coordinatedfunction that is executable with the contents of the plural files storedin the specific folder to which the coordinated function is responsive.In this manner, it becomes difficult for information unnecessary for theuser to be displayed as compared with a case where the coordinatedfunction is always notified at the stage where the plural files areacquired.

Further, when three or more files are stored in a specific folder towhich the coordinated function is responsive, the specifying unit 24identifies those three or more files as a group of candidate files forcoordination, and specifies the coordinated function that is executablewith the contents of two or more files included in the file group.

Modification 7

Hereinafter, modification 7 will be described. The specifying unit 24may specify a coordinated function according to the subordinate-superiorrelationship among plural files. For example, when the terminal device10 acquires a file used as a superior file and a file used as asubordinate file in relation to the superior file, the specifying unit24 identifies the superior file and the subordinate file as a file groupto be subjected to coordination. The specifying unit 24 may specify acoordinated function that is executable with the contents of thesuperior file and the contents of the subordinate file, and thecontroller 22 may cause the information on the coordinated function tobe displayed on the display unit.

For example, a file in which the content of another file is scheduled tobe input corresponds to a superior file, and a file which is scheduledto be input into another file corresponds to a subordinate file. As aspecific example, since the file A for the ledger is a file in which thecontent of another file (e.g., a receipt) is scheduled to be input, thefile A corresponds to a superior file. Since the file B of the receiptis a file which is scheduled to be input into another file (e.g., a filefor the ledger), the file B corresponds to a subordinate file.

As another example, a file whose contents themselves are editable maycorrespond to a superior file, and a file whose contents are noteditable may correspond to a subordinate file. As an example, when thedocument itself displayed in a document file is editable, the documentfile corresponds to a superior file. In addition, when the image itselfdisplayed in an image file is not editable (i.e., when it is possible tosuperimpose other contents on the image, but the image itself is noteditable), the image file corresponds to a subordinate file. Of course,when a file is a document file and the document is not editable, thefile corresponds to a subordinate file, and when a file is an image fileand the image is editable, the file corresponds to a superior file.

The specifying unit 24 may determine whether the file falls within oneof the superior file and the subordinate file based on a file name, afile format (i.e., an extension), a file attribute other than the filename (information indicating a file size, whether a file is a superiorfile or a subordinate file, etc.), the content of a file, and the like.For example, the specifying unit 24 identifies a file whose file name isa ledger, a form sheet, a ledger, or the like as a superior file, andidentifies a file whose file name is a receipt or the like as asubordinate file.

Also, the specifying unit 24 may determine whether the file falls withinone of the superior file and the subordinate file based on therelationship among the plural files to be subjected to coordination.That is, the relevance of the superior file or the subordinate file maybe relatively determined.

As another example, the specifying unit 24 may identify a file having adocument format, a file having a table format, a file having a sheetformat, and a file having a figure format as superior files, and mayidentify a file having an image format, a file having a video format,and a file having a voice format as subordinate files. Of course, thespecifying unit 24 may determine whether the file falls within one ofthe superior file and the subordinate file by determining the fileindividually. For example, the specifying unit 24 may determine whetherthe file falls within one of the superior file and the subordinate fileby analyzing the content of the file.

According to modification 7, when plural files having thesubordinate-superior relationship with one another are acquired by theterminal device 10, the user is provided with a coordinated functionthat is executable with the contents of the plural files.

In a case where the superior file is stored in the server 14, when thesubordinate file is transmitted from the terminal device 10 to theserver 14, the specifying unit 24 provided in the server 14 may specifya coordinated function that is executable with the content of thesuperior file and the content of the subordinate file. For example, in acase where the file for the ledger is stored in the server 14, when thefile of the receipt is transmitted from the terminal device 10 to theserver 14, the specifying unit 24 provided in the server 14 specifies afunction of writing the content of the receipt in the ledger as anexecutable coordinated function. The same processing may be performedwhen the superior file is stored in the terminal device 10 and theterminal device 10 acquires the subordinate file.

Modification 7 may be applied to modification 1. For example, in a casewhere the superior file (e.g., file A) is stored in the storage unit 20of the terminal device 10, when the terminal device 10 acquires a filecorresponding to the subordinate file in relation to the superior file(e.g., file B), the specifying unit 24 identifies the superior file andthe subordinate file as files to be subjected to coordination. In thiscase, the specifying unit 24 specifies a coordinated function that isexecutable with the contents of the superior file and the contents ofthe subordinate file. On the contrary, in a case where the subordinatefile is stored in the storage unit 20 of the terminal device 10, evenwhen the terminal device 10 acquires a file corresponding to thesuperior file in relation to the subordinate file, the specifying unit24 may specify a coordinated function that is executable with thecontents of such files.

Modification 7 may be applied to modification 2. For example, in a casewhere an image associated with the superior file is displayed on aspecific screen, when the terminal device 10 acquires a filecorresponding to the subordinate file in relation to the superior file,the specifying unit 24 identifies the superior file and the subordinatefile as files to be subjected to coordination. In this case, thespecifying unit 24 specifies a coordinated function that is executablewith the contents of the superior file and the contents of thesubordinate file. On the contrary, in a case where an image associatedwith the subordinate file is displayed on a specific screen, when theterminal device 10 acquires a file corresponding to the superior file inrelation to the subordinate file, the specifying unit 24 may specify acoordinated function that is executable with the contents of such files.

Modification 7 may be applied to modification 3. For example, when animage associated with the superior file and an image associated with afile corresponding to the subordinate file in relation to the superiorfile are displayed on the same screen, the specifying unit 24 identifiesthe superior file and the subordinate file as files to be subjected tocoordination. In this case, the specifying unit 24 specifies acoordinated function that is executable with the contents of thesuperior file and the contents of the subordinate file.

Modification 7 may be applied to modification 4. For example, when animage associated with the superior file and an image associated with afile corresponding to the subordinate file in relation to the superiorfile are displayed on a specific display area to which a coordinatedfunction is responsive, the specifying unit 24 identifies the superiorfile and the subordinate file as files to be subjected to coordination.In this case, the specifying unit 24 specifies a coordinated functionthat is executable with the contents of the superior file and thecontents of the subordinate file.

Modification 7 may be applied to modification 5. For example, when thesuperior file and a file corresponding to the subordinate file inrelation to the superior file are stored in the same folder, thespecifying unit 24 identifies the superior file and the subordinate fileas files to be subjected to coordination. In this case, the specifyingunit 24 specifies a coordinated function that is executable with thecontents of the superior file and the contents of the subordinate file.

Modification 7 may be applied to modification 6. For example, when thesuperior file and a file corresponding to the subordinate file inrelation to the superior file are stored in a specific folder to which acoordinated function is responsive, the specifying unit 24 identifiesthe superior file and the subordinate file as files to be subjected tocoordination. In this case, the specifying unit 24 specifies acoordinated function that is executable with the contents of thesuperior file and the contents of the subordinate file.

Modification 8

Hereinafter, modification 8 will be described. In the above exemplaryembodiment and modifications, the specifying unit 24 may identify a filethat is a target of a coordinated function based on a file format. Forexample, the specifying unit 24 identifies plural files having differentfile formats as files that are targets of a coordinated function, andspecifies a coordinated function that is executable with the contents ofthe plural files. For example, when the terminal device 10 acquires agroup of files via an electronic mail or the like, the specifying unit24 extracts plural files having different file formats from each otherin the group of files, and specifies a coordinated function that isexecutable with the contents of the plural files. This is also the casewhen the group of files is displayed on the same screen or stored in thesame folder.

Also, the specifying unit 24 may identify plural files having the samefile format as files that are targets of a coordinated function, andspecify a coordinated function that is executable with the contents ofthe plural files. For example, when the terminal device 10 acquires agroup of files via an electronic mail or the like, the specifying unit24 extracts plural files having the same file format in the group offiles, and specifies a coordinated function that is executable with thecontents of the plural files. This is also the case when the group offiles is displayed on the same screen or stored in the same folder.

The user may set either one of a first processing in which plural fileshaving different file formats are targets of a coordinated function, ora second processing in which plural files having the same file formatare targets of a coordinated function as a processing to be executed.Also, any of the first processing and the second processing may be setto be executed in advance.

According to modification 8, the user is provided with a coordinatedfunction that is executable with the contents of the plural files havingdifferent file formats or the contents of the plural files having thesame file format.

Modification 9

Hereinafter, modification 9 will be described. The coordinated functionaccording to modification 9 includes a process of converting the formatof at least one file included in a group of files to be subjected tocoordination. Specifically, the coordinated function includes a processof converting the formats of one or more files to be added into theformats of destination files, and adding the contents of one or morefiles to be added after conversion to the destination files. Forexample, when a document file and a table file are used as files to besubjected to coordination, the coordinated function that is executablewith the contents of those files is a function of converting the tablefile into a document format (e.g., a text format or a document format)and then attaching the converted document to a document file. Thecoordinated function may be a function that converts a document fileinto a table format, and attaches the converted table to a table file.

According to modification 9, it is possible to unify the formats ofplural files and to execute a coordinated function using the contents ofthe plural files.

Modification 10

Hereinafter, modification 10 will be described. In modification 10, whenplural files are acquired and then an operation is performed to connectthe plural files on a screen, information on a coordinated functionexecutable with the contents of the plural files is displayed.Hereinafter, modification 10 will be described in detail with referenceto FIG. 8 .

FIG. 8 illustrates a screen 28. For example, the files A and B areacquired by the terminal device 10, and the image 30 associated with thefile A and the image 32 associated with the file B are displayed on thescreen 28.

When the user performs an operation of connecting the image 30 and theimage 32 to one another on the screen 28 as indicated by an arrow 38,the specifying unit 24 identifies the file A associated with the image30 and the file B associated with the image 32 as files to be subjectedto coordination, and specifies a coordinated function that is executablewith the contents of the files A and B. The controller 22 causes theinformation on the coordinated function to be displayed on the displayunit.

For example, when a user traces plural images (images 30 and 32 in theabove example) on the screen 28 with an indicator (e.g., a user'sfinger, a pen, a stylus, or the like) (e.g., traces plural images bytouching the images displayed on the screen 28), the plural images areconnected to one another. The controller 22 detects the contact of theindicator on the screen 28 and detects the movement of the indicator onthe screen 28. Alternatively, the connection operation may be performedaccording to the user's voice instructions.

In the example illustrated in FIG. 8 , the operation is performed toconnect the image 32 to the image 30. Alternatively, the operation maybe performed to connect the image 30 to the image 32. In any case, thefiles A and B are identified as files to be subjected to coordination.

Also, the specifying unit 24 may identify a file associated with thesource image for the connection operation as a file for providingcontents, and identify a file associated with the destination image forthe connection operation as a file for integration. For example, whenthe user performs an operation of connecting the image 32 to the image30, the specifying unit 24 identifies the file B associated with theimage 32 as a file for providing contents, and identifies the file Aassociated with the image 30 as a file for integration. Then, thespecifying unit 24 specifies a function of inputting the contents of thefile B into the file A as a coordinated function that is executable withthe contents of the files A and B.

As another example, the specifying unit 24 may identify a fileassociated with the source image for the connection operation as a filefor integration, and identify a file associated with the destinationimage for the connection operation as a file for providing contents. Forexample, when the user performs an operation of connecting the image 30to the image 32 (when the operation is performed in a direction oppositeto the direction indicated by the arrow 38), the specifying unit 24identifies the file B associated with the image 32 as a file forproviding contents, and identifies the file A associated with the image30 as a file for integration. Then, the specifying unit 24 specifies afunction of inputting the contents of the file B into the file A as acoordinated function that is executable with the contents of the files Aand B.

According to modification 10, a coordinated function is provided by asimple operation of connecting images to one another.

The specifying unit 24 may specify different coordinated functions inaccordance with the order in which plural images are connected to oneanother. For example, when an operation is performed to connect theimage 30 to the image 32, the specifying unit 24 specifies a coordinatedfunction 1 that is executable with the contents of the files A and B,and when an operation is performed to connect the image 32 to the image30, the specifying unit 24 specifies a coordinated function 2 that isexecutable with the contents of the files A and B (a function which isdifferent from the coordinated function 1). In this case, information onthe different coordinated functions is displayed according to the orderin which the plural images are connected to one another. That is, thecoordinated function provided to the user may be changed according tothe order in which the images are connected to one another.

In addition, the specifying unit 24 may determine the priority of thecoordinated function in accordance with the order in which plural imagesare connected to one another. For example, when an operation isperformed to connect the image 30 to the image 32, the priority of theabove coordinated function 1 becomes a “first place,” and the priorityof the above coordinated function 2 becomes a “second place.” In thiscase, the controller 22 causes information on the coordinated function 1to be displayed on the display unit with a higher priority (e.g., higherlevel) than information on the coordinated function 2. Contrarily to theabove example, when an operation is performed to connect the image 32 tothe image 30, the priority of the coordinated function 1 becomes a“second place,” and the priority of the coordinated function 2 becomes a“first place.” In this case, the controller 22 causes the information onthe coordinated function 2 to be displayed on the display unit with ahigher priority (e.g., higher level) than the information on thecoordinated function 1. Of course, the order of priority may be thereverse of the above order.

Modification 11

Hereinafter, modification 11 will be described. In modification 11, whenplural files are acquired, and the plural files are overlapped with oneanother on the screen, the information on the coordinated function thatis executable with the contents of the plural files is displayed.Hereinafter, modification 11 will be described in detail with referenceto FIG. 9 .

FIG. 9 illustrates a screen 28. For example, the files A and B areacquired by the terminal device 10, and the image 30 associated with thefile A and the image 32 associated with the file B are displayed on thescreen 28.

When the user moves the image 32 to the image 30 and superimposes theimage 32 on the image 30 on the screen 28 as indicated by an arrow 40,the specifying unit 24 identifies the file A associated with the image30 and the file B associated with the image 32 as files to be subjectedto coordination, and specifies the coordinated function that isexecutable with the contents of the files A and B. The controller 22causes the information on the coordinated function to be displayed onthe display unit.

For example, a user may drag and drop images using an indicator tooverlap the images with other images. In the example illustrated in FIG.9 , the user drags the image 32 (the image 32 indicated by a brokenline) and drops the image 32 at a position overlapping the image 30. Theuser may also perform a superimposing operation according to the user'svoice instructions.

In the example illustrated in FIG. 9 , the image 32 is superimposed onthe image 30, but the image 30 may be superimposed on the image 32. Inany case, the files A and B are identified as files to be subjected tocoordination.

Further, the specifying unit 24 may identify a file associated with animage superimposed on another image as a file for providing contents andidentify a file associated with an image on which other images aresuperimposed as a file for integration. For example, when the usersuperimposes the image 32 on the image 30, the specifying unit 24identifies the file B associated with the image 32 as a file forproviding contents, and identifies the file A associated with the image30 as a file for integration. Then, the specifying unit 24 identifies afunction of inputting the contents of the file B into the file A as acoordinated function that is executable with the contents of the files Aand B.

As another example, the specifying unit 24 may identify a fileassociated with an image superimposed on another image as a file forintegration, and identify a file associated with an image on which otherimages are superimposed, as a file for providing contents. For example,when the user superimposes the image 30 on the image 32 (when asuperimposition opposite to the example illustrated in FIG. 9 isperformed), the specifying unit 24 identifies the file B associated withthe image 32 as a file for providing contents, and identifies the file Aassociated with the image 30 as a file for integration. Then, thespecifying unit 24 specifies a function of inputting the contents of thefile B into the file A as a coordinated function that is executable withthe contents of the files A and B.

According to modification 11, a coordinated function is provided by asimple operation of superimposing images on one another.

As in the modification 10, the specifying unit 24 may specify differentcoordinated functions in accordance with the order in which pluralimages are superimposed on one another. For example, when an operationis performed to superimpose the image 30 on the image 32, the specifyingunit 24 specifies a coordinated function 1 that is executable with thecontents of the files A and B, and when an operation is performed tosuperimpose the image 32 on the image 30, the specifying unit 24specifies a coordinated function 2 that is executable with the contentsof the files A and B. In this case, information on different coordinatedfunctions is displayed in accordance with the order in which pluralimages are superimposed on one another. That is, the coordinatedfunction provided to the user may be changed according to the order inwhich the images are superimposed on one another.

In addition, the specifying unit 24 may determine the priority of thecoordinated function in accordance with the order in which plural imagesare superimposed on one another. For example, when an operation isperformed to superimpose the image 30 on the image 32, the priority ofthe above coordinated function 1 becomes a “first place,” and thepriority of the above coordinated function 2 becomes a “second place.”In this case, the controller 22 causes information on the coordinatedfunction 1 to be displayed on the display unit with a higher priority(e.g., higher level) than information on the coordinated function 2.Contrary to the above example, when an operation is performed tosuperimpose the image 32 on the image 30, the priority of thecoordinated function 1 becomes a “second place,” and the priority of thecoordinated function 2 becomes a “first place.” In this case, thecontroller 22 causes the information on the coordinated function 2 to bedisplayed on the display unit with a higher priority (e.g., higherlevel) than the information on the coordinated function 1. Of course,the order of priority may be the reverse of the above order.

The files to be subjected to coordination may be selected by othermethods than modifications 10 and 11. For example, when a drawingoperation is performed on an image associated with a file, thespecifying unit 24 may identify the file as a file to be subjected tocoordination. The drawing operation is, for example, an operation ofenclosing an image by a circle or a rectangle, an operation of forming adot, a line, or a check mark, or the like. Also, the specifying unit 24may identify the file selected by the user within a predetermined timelimit as a file to be subjected to coordination. The start time of thetime limit is, for example, the time the first file was selected by theuser. When plural images are connected to one another, the plural imagesare superimposed on each other, or a drawing operation is performed onthe plural images within the time limit, the specifying unit 24identifies a file associated with each of the plural images as a file tobe subjected to coordination.

Further, in modifications 10 and 11, when the coordination is cancelled,the user may select, on the screen, an image associated with the filefor cancellation, or press the coordination cancellation buttondisplayed on the screen.

Modification 12

Hereinafter, modification 12 will be described. When a file is specifiedby the user and a display instruction for the coordinated function isgiven, information on the coordinated function that is executable withthe contents of the file may be displayed. Hereinafter, modification 12will be described in detail with reference to FIG. 10 .

FIG. 12 illustrates a screen 28. The screen 28 displays, for example, animage 42 associated with the file A, or the like. When the userdesignates the image 42 using the UI unit 18 and gives an instruction ofdisplaying the menu (e.g., when a right click of a mouse is performed,etc.), the controller 22 displays a menu 44 on the screen 28. Thecontroller 22 may display the menu 44 on the screen 28 by connecting themenu 44 with the designated image 42. Various commands are displayed inthe menu 44. The user may give instructions to execute the processingassociated with a command by designating the command displayed in themenu 44. For example, the menu 44 displays an “open command” ofdisplaying the contents of the file A using application software, a“delete command” of deleting the file A, a “coordinated functioncommand” of displaying information on the coordinated function that isexecutable with the contents of the file A, and the like. Of course,other commands may be included in the menu 44.

For example, when the user designates the “coordinated function command”using the UI unit 18, the controller 22 causes a coordinated functionlist 46 to be displayed on the screen 28 as information on thecoordinated function that is executable with the contents of the file A.The coordinated function list 46 displays the names of one or morecoordinated functions that are executable with the contents of the fileA. Each coordinated function is specified by the specifying unit 24.That is, the specifying unit 24 specifies the coordinated function thatis executable with the contents of the file A by referring to thecoordinated function management table. The specifying unit 24 mayspecify the coordinated function that is executable with the contents ofthe file A in advance, or specify the coordinated function in the timingin which the file A is designated by the user or in the timing in whichthe “coordinated function command” is designated.

When the user selects a coordinated function from the coordinatedfunction list 46 using the UI unit 18, the controller 22 causes a listof the files that are targets of the coordinated function (a file list48) to be displayed together with the file A on the screen 28. The filedisplayed in the file list 48 may be a file stored in the storage unit20 of the terminal device 10 or may be a file stored in an externaldevice such as a device 12 or a server 14. For example, the specifyingunit 24 specifies a file format associated with the selected coordinatedfunction together with the file format of the file A in the coordinatedfunction management table, and the controller 22 searches for a filehaving the file format and causes the name of the file to be displayedin the file list 48. Further, the specifying unit 24 may specify a filethat is a target of the coordinated function together with the file Abased on the name of the file A, and the controller 22 may search forthe file. The name of the file searched in this manner may be displayedin the file list 48. In addition, the controller 22 may manage thehistory of the file used as a target of the coordinated function in thepast. In this case, the controller 22 may search for the file used as atarget of the selected coordinated function together with the file A inthe past, and display the name of the file in the file list 48 byreferring to the history information. For example, the files B and C,together with the file A, correspond to the files that are the targetsof the selected coordinated function, and such names are displayed inthe file list 48. As an example, information indicating a combination ofthe file A with other files, such as “A+B,” “A+C,” or “A+B+C” isdisplayed in the file list 48.

As described above, by displaying the information on the coordinatedfunction as in the coordinated function list 46, the user is providedwith information on the coordinated function that is executable with thecontents of the file designated by the user. By displaying informationon the file as in the file list 48, the user is provided with the filedesignated by the user and information on the file that is a target of acoordinated function.

For example, when the user selects a file from the file list 48 usingthe UI unit 18, the controller 22 may execute a coordinated functionthat is selected by the user from the coordinated function list 46 withrespect to the file group selected by the user. For example, when thefiles A, B, and C are selected by the user from the file list 48, thecontroller 22 executes a coordinated function that is selected by theuser from the coordinated function list 46 with respect to the files A,B, and C.

In a case where the file that was used in the past together with thefile A as a target of the selected coordinated function (e.g., the fileC) is selected by the user from the file list 48, when the file C doesnot exist in a storage location when it was used in the past as a targetof the coordinated function, the controller 22 may cause information forprompting the user to acquire the file C to be displayed on the screen28. The storage location may be the storage unit 20 of the terminaldevice 10, or a storage device provided in an external device such asthe device 12 or the server 14. For example, as illustrated in FIG. 11 ,the controller 22 causes a message 50 to be displayed on a screen 28.The message 50 includes a message indicating that the linkage functionis not executable because the file C does not exist in the originalstorage location and a message for asking the user whether the file Cneeds to be acquired (e.g., downloaded). When the user presses the YESbutton in the message 50 using the UI unit 18, the controller 22searches for the file C. For example, when the file C was originallystored in the server 14 but is not stored in the server 14 at thepresent time, the controller 22 searches for the file C in the storagelocation other than the server 14 (e.g., the terminal device 10 or anexternal device such as the device 12). For example, when the file isstored in the storage location XXXXX, the controller 22 acquires thefile C from the storage location XXXXX and executes the coordinatedfunction selected by the user using the contents of the files A and C.

In addition, when the user selects the coordinated function from thecoordinated function list 46, the controller 22 may acquire the filethat is a target of the coordinated function together with the file A.To explain using the above example, in a case where the user selects acoordinated function using the contents of the file C, when the file Cis not stored in the original storage location, the controller 22searches for the file C and acquires the file C from the current storagelocation. When receiving the instruction to execute the coordinatedfunction from the user or not receiving the instruction, the controller22 may execute the coordinated function using the contents of the filesA and C.

As described above, even when the file required for the coordinatedfunction does not exist in the original storage location, the file maybe searched and the coordinated function may be executed.

Modification 13

Hereinafter, modification 13 will be described. In modification 13, theuser is notified of a device that executes the coordinated function.Hereinafter, modification 13 will be described in detail with referenceto FIG. 12 .

FIG. 12 illustrates a screen 28. For example, when the user selects acoordinated function from the coordinated function list 46 using the UIunit 18 and selects a file from the file list 48, the controller 22causes a list of devices for executing the coordinated function (adevice list 52) to be displayed on the screen 28. As a specific example,when the coordinated function “workflow 1” is selected from thecoordinated function list 46 and the files A and B are selected from thefile list 48, the controller 22 causes the name of the device forexecuting the coordinated function “workflow 1” to be displayed in thedevice list 52. Each device is specified by the specifying unit 24. Thatis, the specifying unit 24 specifies a device for executing thecoordinated function “workflow 1” by referring to the coordinatedfunction management table (a table including device identificationinformation indicating a device used for the coordinated function). Forexample, the coordinated function “workflow 1” is a function that isexecutable by a single device α, a single device β, or a combination ofdevices γ and δ, and the names of the devices are displayed in thedevice list 52.

Further, at a stage where the user selects the coordinated function fromthe coordinated function list 46, the controller 22 may cause a list ofdevices for executing the selected coordinated function (a device list52) to be displayed on the screen 28.

The controller 22 may acquire information indicating the performance ofeach device from each device, the server 14, or the like, and displaythe name of each device to be displayed in the device list 52 inaccordance with the display order corresponding to the performance ofeach device. For example, the controller 22 causes the device whoseprocessing speed is higher to be displayed in a higher level of thedevice list 52.

The controller 22 may also cause a list of software for executing thecoordinated function selected by the user (a software list) to bedisplayed on the screen 28. Each software is specified by the specifyingunit 24. That is, the specifying unit 24 specifies the software forexecuting the coordinated function selected by the user by referring tothe coordinated function management table (the table including thesoftware identification information indicating the software used for thecoordinated function). Also, in this case, the controller 22 may causethe name of each software to be displayed in the software list inaccordance with the display order corresponding to the performance ofeach software. Further, when the software for executing the coordinatedfunction is not installed in the terminal device 10, the controller 22may cause a message indicating that such software is not installed inthe terminal device 10, a message for prompting the user to download thesoftware, or the like to be displayed on the screen 28. The controller22 may acquire the software automatically or according to the user'sinstructions. For example, the controller 22 downloads the software fromthe external device such as the server 14.

When both the device and the software are necessary to execute thecoordinated function selected by the user, the controller 22 may cause alist of devices and software for executing the coordinated function tobe displayed on the screen 28. The specifying unit 24 specifies thedevice and software for executing the coordinated function selected bythe user by referring to the coordinated function management table (thetable including the identification information indicating the device andthe software used for the coordinated function). Also, in this case, thecontroller 22 may cause the names of each device and each software to bedisplayed in the list in accordance with the display order correspondingto the performance of each device and each software.

According to modification 13, the information of the device and softwareused for the coordinated function is provided to the user.

The controller 22 may acquire information indicating the status of eachdevice and notify the user of the status of the device. The controller22 periodically acquires information indicating the status of the devicein the timing designated by the user, the timing in which the device isdesignated by the user, or the timing in which the coordinated functionis designated by the user. The controller 22 may acquire statusinformation from each device or may acquire status information from theserver 14 when the status information of each device is managed by theserver 14. The status of the device is in use, not in use, in failure,during maintenance, power off, or the like.

Hereinafter, the status notification will be described in detail withreference to FIG. 13 . For example, in a case where the user selects thedevice α from the device list 52 using the UI unit 18, when the device αis used by another user and the device α may not be used at present, thecontroller 22 causes a message 54 indicating this to be displayed on thescreen 28. When the user selects a device other than the device α andthe device is usable, the controller 22 causes the coordinated functionselected by the user to be executed on the device automatically oraccording to the user's instructions. Further, when a device other thanthe device α is not selected by the user and the device α becomesusable, the controller 22 may cause the coordinated function selected bythe user to be executed on the device α automatically or according tothe user's instructions. When the device α is usable, the controller 22may cause a message indicating this to be displayed on the screen 28.

Also, when some of the functions of the device α selected by the userare in use but the coordinated function selected by the user isexecutable, the controller 22 may cause the coordinated function to beexecuted on the device α. For example, it is assumed that the device αis a multifunction device that has a scanning function, a printingfunction, and a copying function, and the coordinated function selectedby the user includes a scanning function. When the device α is executingthe printing function but the scanning function may be executedseparately during the execution of the printing function, the controller22 may cause the scanning function included in the coordinated functionto be executed on the device α.

Even when the user does not select a device from the device list 52, thecontroller 22 may cause the status information of each device to bedisplayed on the screen 28. In this manner, it becomes easier for theuser to select the device that the user may use.

Modification 14

Hereinafter, modification 14 will be described. In modification 14, whenplural files are acquired from plural users, information on thecoordinated function that is executable with the contents of the pluralfiles is displayed. The coordinated function may be changed according tothe user from which the file is acquired. Hereinafter, modification 14will be described in detail with reference to FIG. 14 .

FIG. 14 illustrates an example of a coordinated function managementtable according to modification 14. In the coordinated functionmanagement table, information for identifying the user (useridentification information), information for identifying the fileacquired from the user (file identification information), andinformation indicating the coordinated functions that are executablewith the contents of plural files (coordinated function information) areassociated with one another. The user herein may indicate an actualperson or a user account. That is, when the users are the same personbut have plural different user accounts, the plural user accounts areidentified as separate users. As a specific example, the users A and Bare physically the same person, but may indicate plural user accountspossessed by the person or may indicate physically different people.

The contents illustrated in FIG. 14 will be described in detail. Forexample, when a file 1 is acquired from the user A and a file 2 isacquired from the user B, the coordinated function that is executablewith the files 1 and 2 is a coordinated function 1. In addition, whenthe file 2 is acquired from the user A and the file 1 is acquired fromthe user B, the coordinated function that is executable with the files 1and 2 is a coordinated function 2. That is, when the files that aretargets of the coordinated function are the same, but the users as theacquisition sources are different, different coordinated functions maybe executed. Of course, even when the users as the acquisition sourcesare different, the same coordinated function may be executed. Inaddition, when a file 3 is acquired from the user A and a file 4 isacquired from the user B, the coordinated function that is executablewith the files 3 and 4 is a coordinated function 3.

Hereinafter, modification 14 will be described in more detail. Forexample, when the file 1 is transmitted from the terminal device 10 ofthe user A to the server 14, and the file 2 is transmitted from theterminal device 10 of the user B to the server 14, the specifying unit24 provided in the server 14 identifies the files 1 and 2 as files thatare targets of the coordinated function, and specifies the coordinatedfunction 1 that is executable with the files 1 and 2. The information onthe coordinated function 1 may be transmitted to and displayed on therespective terminal devices 10 of the users A and B, or any one of theterminal devices 10. As described above, the users A and B arephysically the same person and may indicate plural different useraccounts.

When the terminal device 10 of the user A acquires the file 1 as a fileof the user A and acquires the file 2 from the terminal device 10 of theuser B, the specifying unit 24 of the terminal device 10 of the user Aspecifies the coordinated function 1 that is executable with thecontents of the files 1 and 2. The information on the coordinatedfunction 1 is displayed on the display unit of the terminal device 10 ofthe user A. Of course, the information may be displayed on the displayunit of the terminal device 10 of the user B.

Further, modification 14 may be applied to modification 5. That is, whenplural files acquired from plural users are stored in the same folder, acoordinated function that is executable with the contents of the pluralfiles may be notified. The folder may be a folder provided in theterminal device 10, a folder provided in the device 12, or a folderprovided in the server 14.

Further, modification 14 may be applied to modification 6. That is, whenplural files acquired from plural users are stored in a specific folder,a coordinated function that is executable with the contents of theplural files may be notified. The folder may be a folder provided in theterminal device 10, a folder provided in the device 12, or a folderprovided in the server 14.

When plural files are stored in the same specific folder, thecoordinated function may be notified, or when each of the plural filesis stored in a separate specific folder, the coordinated function may benotified. As a specific example, when the file 1 from the user A and thefile 2 from the user B are stored in the same specific folder X, thecoordinated function 1 may be notified. As another example, when thefile 1 from the user A is stored in a specific folder Y and the file 2from the user B is stored in a specific folder Z, the coordinatedfunction 1 may be notified.

Also, the coordinated function may be changed according to the folder ofthe storage location. That is, when the folder in which the file isstored is different, the notified coordinated function may also bechanged. For example, when the folder in which the acquired file isstored differs in the terminal device 10 of each user, the notifiedcoordinated function is also changed.

In addition, when plural files are acquired by plural users, thecoordinated function that is executable with the contents of the pluralfiles may be notified. For example, when the terminal device 10 of theuser A acquires the file 1 and the terminal device 10 of the user Bacquires the file 2, information on the coordinated function 1 that isexecutable with the contents of the files 1 and 2 is displayed on therespective terminal devices 10 of the users A and B, or any one of theterminal devices 10. The specification processing of the coordinatedfunction is performed by any of the terminal devices 10 of the users Aand B. In addition, the coordinated function may be changed inaccordance with the folder in which the file is stored in the terminaldevice 10 of each user. That is, when the folder of the file storagelocation is changed in the terminal device 10 of each user, thecoordinated function may be changed in accordance with the change.

Modification 15

Hereinafter, modification 15 will be described. The priority of thenotification of the coordinated function may be changed according to theorder in which plural files are acquired. The coordinated function to beexecuted may also be changed.

FIG. 15 illustrates an example of a coordinated function managementtable according to modification 15. As an example, in the coordinatedfunction management table, information indicating a combination of fileformats, information indicating the order in which the files areacquired, and information indicating the coordinated function and thepriority (coordinated function information) are associated with oneanother. The acquisition order is the order in which the files areacquired, and is, for example, the order in which the terminal device 10or the server 14 acquires the files, the order in which the files aredisplayed on the same screen, the order in which the files are stored inthe same folder, the order in which the files are displayed in aspecific display area, the order in which the files are stored in aspecific folder, and the like. For example, when the terminal device 10acquires plural files in order, the order of acquiring the filescorresponds to an “acquisition order.” The priority is a priority ofdisplay of information on the coordinated function.

For example, the coordinated functions that are associated with acombination of a document format and an image format are a “function ofinserting an image into a document” and a “function of superimposing adocument on an image.”

For example, when each file is acquired by the terminal device 10 in theorder of the document file and the image file, the order of acquisitionof the document file is a first place, and the order of acquisition ofthe image file is a second place. In this case, the priority of the“function of superimposing a document on an image” becomes the firstplace, and the priority of the “function of inserting an image into adocument” becomes the second place. That is, the priority of thecoordinated function to add the contents of the previously acquired fileto the later acquired file becomes higher than the priority of thecoordinated function to add the contents of the later acquired file tothe previously acquired file. In this case, the information on the“function of superimposing a document on an image” is displayed with ahigher priority than the information on the “function of inserting animage into a document.” For example, information on the “function ofsuperimposing a document on an image” is displayed above or prior toinformation on the “function of inserting an image into a document.” Ofcourse, the priority described above may be reversed.

Conversely, when each file is acquired by the terminal device 10 in theorder of the image file and the document file, the acquisition order ofthe image file is a first place, and the acquisition order of thedocument file is a second place. In this case, the priority of the“function of inserting an image into a document” becomes the firstplace, and the priority of the “function of superimposing a document onan image” becomes the second place. In this case, the information on the“function of inserting an image into a document” is displayed with ahigher priority than the information on the “function of superimposing adocument on an image.” For example, the information on the “function ofinserting an image into a document” is displayed above or prior to theinformation on the “function of superimposing a document on an image.”

According to modification 15, it is possible to appropriately inform theuser of a function having plural options.

Also, when plural files are acquired by plural users, the priority ofthe coordinated function may be changed according to the order in whicheach user acquires the file.

The above terminal device 10 is implemented by, for example, cooperationbetween hardware and software. Specifically, the terminal device 10includes one or more processors such as a CPU (not illustrated). Thefunction of each portion of the terminal device 10 is implemented by theone or more processors reading and executing the program stored in astorage device (not illustrated). The above program is stored in astorage device via a recording medium such as a CD or a DVD, or via acommunication path such as a network. As another example, each portionof the terminal device 10 may be implemented by hardware resources suchas, for example, a processor, an electronic circuit, or an applicationspecific integrated circuit (ASIC). Devices such as memories may be usedfor such an implementation. As still another example, each portion ofthe terminal device may be implemented by a digital signal processor(DSP), a field programmable gate array (FPGA), or the like.

The foregoing description of the exemplary embodiments of the presentinvention has been provided for the purposes of illustration anddescription. It is not intended to be exhaustive or to limit theinvention to the precise forms disclosed. Obviously, many modificationsand variations will be apparent to practitioners skilled in the art. Theembodiments were chosen and described in order to best explain theprinciples of the invention and its practical applications, therebyenabling others skilled in the art to understand the invention forvarious embodiments and with the various modifications as are suited tothe particular use contemplated. It is intended that the scope of theinvention be defined by the following claims and their equivalents.

What is claimed is:
 1. An information processing apparatus comprising: amemory that stores a coordinated function management table comprisinginformation indicating different combinations of a plurality of fileformats, information indicating a coordinated function that isexecutable with each combination of the file formats, and informationindicating a device combination including at least one device forexecuting the coordinated function with the each combination of the fileformats; and a processor, configured to: display a plurality of imageson a user interface; receive an operation performed by a user on adesignated image, among the plurality of images on the user interface,associated with a designated file; and in response to the operationbeing an instruction related to an execution of a coordinated function,determine and display a list of candidates comprising at least onecandidate coordinated function which is executable by using thedesignated file on the user interface, receive a selection on a targetcoordinated function among the list of candidates from the user on theuser interface, determine and display a list of files, which aredifferent from the designated file, used for executing the targetcoordinated function along with the designated file on the userinterface according to the coordinated function management table,receive a selection on a first file among the list of files used forexecuting the target coordinated function along with the designated filefrom the user on the user interface, determine and display a list ofdevices, comprising at least one device combination, for executing thetarget coordinated function with the first file and the designated fileon the user interface according to the coordinated function managementtable, receive a selection on a target device combination among the listof devices from the user on the user interface, and execute the targetcoordinated function with the first file and the designated file byusing at least one device included in the target device combination. 2.The information processing apparatus according to claim 1, wherein theprocessor displays the list of files used for executing the targetcoordinated function based on history information of the user.
 3. Theinformation processing apparatus according to claim 1, wherein theprocessor searches for a file used together with the designated file forexecuting the target coordinated function in the past and causes a nameof the searched file to be displayed in the list of files.
 4. Theinformation processing apparatus according to claim 1, wherein the firstfile is stored in a terminal device of the user.
 5. The informationprocessing apparatus according to claim 1, wherein the first file isstored in an external device other than a terminal device of the user.6. The information processing apparatus according to claim 1, whereinthe processor is further configured to: in response to the first fileused together with the designated file for executing the targetcoordinated function in the past, and in response to the first file notexisting in a previous storage location when the first file was used inthe past, display a message indicating that the target coordinatedfunction is not executable.
 7. The information processing apparatusaccording to claim 1, wherein the processor is further configured to: inresponse to the first file used together with the designated file forexecuting the target coordinated function in the past, and in responseto the first file not existing in a previous storage location when thefirst file was used in the past, display a message inquiring the userwhether to search for the first file from at least one other storagelocation.
 8. The information processing apparatus according to claim 7,wherein the processor is further configured to: in response to the firstfile being searched out from a first storage location among the at leastone other location, download the first file from the first storagelocation.
 9. The information processing apparatus according to claim 1,wherein the processor searches for a file having a specific file formatand causes a name of the searched file to be displayed in the list offiles.
 10. The information processing apparatus according to claim 1,wherein the processor is further configured to: display a list ofcommands to execute processing by using the designated file, wherein thelist of commands comprises a coordinated function command.
 11. Aninformation processing method comprising: storing a coordinated functionmanagement table comprising information indicating differentcombinations of a plurality of file formats, information indicating acoordinated function that is executable with each combination of thefile formats, and information indicating a device combination includingat least one device for executing the coordinated function with the eachcombination of the file formats in a memory; displaying a plurality ofimages on a user interface; receiving an operation performed by a useron a designated image, among the plurality of images on the userinterface, associated with a designated file; and in response to theoperation being an instruction related to an execution of a coordinatedfunction, determining and displaying a list of candidates comprising atleast one candidate coordinated function which is executable by usingthe designated file on the user interface, receiving a selection on atarget coordinated function among the list of candidates from the useron the user interface, determining and displaying a list of files, whichare different from the designated file, used for executing the targetcoordinated function along with the designated file on the userinterface according to the coordinated function management table,receiving a selection on a first file among the list of files used forexecuting the target coordinated function along with the designated filefrom the user on the user interface, determining and displaying a listof devices, comprising at least one device combination, for executingthe target coordinated function with the first file and the designatedfile on the user interface according to the coordinated functionmanagement table, receiving a selection on a target device combinationamong the list of devices from the user on the user interface, andexecuting the target coordinated function with the first file and thedesignated file by using at least one device included in the targetdevice combination.
 12. The information processing method according toclaim 11, wherein the list of files used for executing the targetcoordinated function is displayed based on history info nation of theuser.
 13. The information processing method according to claim 11further comprising: in response to the first file used together with thedesignated file for executing the target coordinated function in thepast, and in response to the first file not existing in a previousstorage location when the first file was used in the past, displaying amessage indicating that the target coordinated function is notexecutable.
 14. The information processing method according to claim 11further comprising: in response to the first file used together with thedesignated file for executing the target coordinated function in thepast, and in response to the first file not existing in a previousstorage location when the first file was used in the past, displaying amessage inquiring the user whether to search for the first file from atleast one other storage location.
 15. The information processing methodaccording to claim 14 further comprising: in response to the first filebeing searched out from a first storage location among the at least oneother location, downloading the first file from the first storagelocation.
 16. A non-transitory computer readable medium storing aprogram causing a computer to execute information processing, theinformation processing comprising: storing a coordinated functionmanagement table comprising information indicating differentcombinations of a plurality of file formats, information indicating acoordinated function that is executable with each combination of thefile formats, and information indicating a device combination includingat least one device for executing the coordinated function with the eachcombination of the file formats in a memory; displaying a plurality ofimages on a user interface; receiving an operation performed by a useron an image a designated image, among the plurality of images on theuser interface, associated with a designated file; and in response tothe operation being an instruction related to an execution of acoordinated function, determining and displaying a list of candidatescomprising at least one candidate coordinated function which isexecutable by using the designated file on the user interface, receivinga selection on a target coordinated function among the list ofcandidates from the user on the user interface, determining anddisplaying a list of files, which are different from the designatedfile, used for executing the target coordinated function along with thedesignated file on the user interface according to the coordinatedfunction management table receiving a selection on a first file amongthe list of files used for executing the target coordinated functionalong with the designated file from the user on the user interface,determining and displaying a list of devices, comprising at least onedevice combination, for executing the target coordinated function withthe first file and the designated file on the user interface accordingto the coordinated function management table, receiving a selection on atarget device combination among the list of devices from the user on theuser interface, and executing the target coordinated function with thefirst file and the designated file by using at least one device includedin the target device combination.